#base <- read_rds('C:/Users/lucas.general/Documents/Documentos R Markdown/Comportamento/Primeira_Visita/Primeira_Visita.RDS')

base <- read.csv('C:/Users/lucas.general/Documents/Documentos R Markdown/Comportamento/Primeira_Visita/Primeira_visita.CSV')

#base <- base %>% 
#  rename(pk_customer = 'ï..pk_customer')

base <- base %>% 
  mutate(flag_teve_compra = ifelse(qtd_compras > 0, 1, 0))

base <- base %>% mutate(qtd_compra2 = ifelse(is.na(qtd_compras),'1.Sem compra',
                                    ifelse(qtd_compras== 1,'2.Uma compra',
                                           ifelse(qtd_compras == 2,'3.Duas compras',
                                                  '4.Mais que duas compras'))))

Entendendo a primeira visita

Clientes com primeira visita entre 2020-01-01 e 2020-04-30 e acompanhados por 1 ano

base <- base %>% 
  filter(visita == 1) %>%
  mutate(is_another_color = as.numeric(is_another_color),
         is_mylook = as.numeric(is_mylook)) %>% 
  mutate_if(is.numeric,list(~replace_na(.,0))) 

flags <- base %>%
  mutate(product_view = ifelse(product_view>0,1,0),
         add_to_cart = ifelse(add_to_cart>0,1,0),
         add_to_favorites = ifelse(add_to_favorites>0,1,0),
         remove_from_cart = ifelse(remove_from_cart>0,1,0),
         checkout = ifelse(checkout>0,1,0),
         is_purchase = ifelse(is_purchase>0,1,0),
         is_my_account = ifelse(is_my_account>0,1,0),
         is_mylook = round(ifelse(is_mylook>0,1,0),2),
         is_content = ifelse(is_content>0,1,0),
         is_faq = ifelse(is_faq>0,1,0),
         is_login = ifelse(is_login>0,1,0),
         is_social_login = ifelse(is_social_login>0,1,0),
         is_forgot_password = ifelse(is_forgot_password>0,1,0),
         is_search = ifelse(is_search>0,1,0),
         is_filter = ifelse(is_filter>0,1,0),
         is_menu = ifelse(is_menu>0,1,0),
         is_sort = ifelse(is_sort>0,1,0),
         is_view_favorites = ifelse(is_view_favorites>0,1,0),
         is_view_sizes = ifelse(is_view_sizes>0,1,0),
         is_size_guide = ifelse(is_size_guide>0,1,0),
         is_fit_finder = ifelse(is_fit_finder>0,1,0),
         is_another_color = ifelse(is_another_color>0,1,0),
         qtt_cross_device = ifelse(qtt_cross_device>0,1,0),
         is_image_search = ifelse(is_image_search>0,1,0),
         is_dft_eco = ifelse(is_dft_eco>0,1,0),
         is_weekly_campaign = ifelse(is_weekly_campaign>0,1,0),
         bounce_sessions = ifelse(bounce_sessions>0,1,0),
         is_purchase2 = ifelse(qtd_compras>0,1,0),
         home_views = ifelse(home_views>0,1,0)
         )
 
 
 
x <- flags %>%
  summarise(visitduration = median(visitduration)/60,
            clientes = length(unique(pk_customer)),
            active_time_on_site = median(active_time_on_site)/visitduration,
            product_view = sum(product_view)/clientes,
            add_to_cart = sum(add_to_cart)/clientes,
            add_to_favorites = sum(add_to_favorites)/clientes,
            remove_from_cart = sum(remove_from_cart)/clientes,
            checkout = sum(checkout)/clientes,
            is_purchase = sum(is_purchase)/clientes,
            is_my_account = sum(is_my_account)/clientes,
            is_mylook = round(sum(is_mylook)/clientes,2),
            is_content = sum(is_content)/clientes,
            is_faq = sum(is_faq)/clientes,
            is_login = sum(is_login)/clientes,
            is_social_login = sum(is_social_login)/clientes,
            is_forgot_password = sum(is_forgot_password)/clientes,
            is_search = sum(is_search)/clientes,
            is_filter = sum(is_filter)/clientes,
            is_menu = sum(is_menu)/clientes,
            is_sort = sum(is_sort)/clientes,
            is_view_favorites = sum(is_view_favorites)/clientes,
            is_view_sizes = sum(is_view_sizes)/clientes,
            is_size_guide = sum(is_size_guide)/clientes,
            is_fit_finder = sum(is_fit_finder)/clientes,
            is_another_color = sum(is_another_color)/clientes,
            qtt_cross_device = sum(qtt_cross_device)/clientes,
            is_image_search = sum(is_image_search)/clientes,
            is_dft_eco = sum(is_dft_eco)/clientes,
            is_weekly_campaign = sum(is_weekly_campaign)/clientes,
            bounce_sessions = sum(bounce_sessions)/clientes,
            is_purchase2 = mean(is_purchase2),
            home_views = sum(home_views)/clientes
            )
    
media_compra <- as.numeric(x %>% 
    select(is_purchase2))

x <- x %>%
    mutate(qtd_compra2 = 'GERAL') %>%
  union_all(
    flags %>%
      group_by(qtd_compra2) %>%
      summarise(visitduration = median(visitduration)/60,
            clientes = length(unique(pk_customer)),
            active_time_on_site = median(active_time_on_site)/visitduration,
            product_view = sum(product_view)/clientes,
            add_to_cart = sum(add_to_cart)/clientes,
            add_to_favorites = sum(add_to_favorites)/clientes,
            remove_from_cart = sum(remove_from_cart)/clientes,
            checkout = sum(checkout)/clientes,
            is_purchase = sum(is_purchase)/clientes,
            is_my_account = sum(is_my_account)/clientes,
            is_mylook = round(sum(is_mylook)/clientes,2),
            is_content = sum(is_content)/clientes,
            is_faq = sum(is_faq)/clientes,
            is_login = sum(is_login)/clientes,
            is_social_login = sum(is_social_login)/clientes,
            is_forgot_password = sum(is_forgot_password)/clientes,
            is_search = sum(is_search)/clientes,
            is_filter = sum(is_filter)/clientes,
            is_menu = sum(is_menu)/clientes,
            is_sort = sum(is_sort)/clientes,
            is_view_favorites = sum(is_view_favorites)/clientes,
            is_view_sizes = sum(is_view_sizes)/clientes,
            is_size_guide = sum(is_size_guide)/clientes,
            is_fit_finder = sum(is_fit_finder)/clientes,
            is_another_color = sum(is_another_color)/clientes,
            qtt_cross_device = sum(qtt_cross_device)/clientes,
            is_image_search = sum(is_image_search)/clientes,
            is_dft_eco = sum(is_dft_eco)/clientes,
            is_weekly_campaign = sum(is_weekly_campaign)/clientes,
            bounce_sessions = sum(bounce_sessions)/clientes,
            home_views = sum(home_views)/clientes
            )
    ) %>%
  select(qtd_compra2,product_view,add_to_cart,add_to_favorites,remove_from_cart ,checkout,is_purchase,is_my_account,
         is_mylook,is_content,is_faq,is_login,is_social_login,is_forgot_password,is_search,is_filter,is_menu,is_sort,
         is_view_favorites,is_view_sizes,is_size_guide,is_fit_finder,is_another_color,qtt_cross_device,is_image_search,
         is_dft_eco,is_weekly_campaign,bounce_sessions,home_views
         ) %>%
  t() 
  
comportamento <- rownames(x)
rownames(x) <- NULL

 
x1 <- cbind(comportamento,x)
x1 <- data.frame(x1)

x1 <- x1 %>% 
  filter(comportamento != 'qtd_compra2') %>% 
  arrange(desc(V2)) %>% 
  mutate(V2 = paste(round(as.numeric(as.character(V2))*100,2), "%", sep=""),
         V3 = paste(round(as.numeric(as.character(V3))*100,2), "%", sep=""),
         V4 = paste(round(as.numeric(as.character(V4))*100,2), "%", sep=""),
         V5 = paste(round(as.numeric(as.character(V5))*100,2), "%", sep=""),
         V6 = paste(round(as.numeric(as.character(V6))*100,2), "%", sep=""),
         )
  
x1 <- x1 %>%
  rename('GERAL' = V2,
         'Sem compra' = V3,
         'Uma compra' = V4,
         'Duas compras' = V5,
         'Mais que duas compra' = V6)
 
x1  %>%
  knitr::kable(caption = "Resumo dos comportamentos dos clientes na primeira visita") %>%
  kable_styling(bootstrap_options = "striped", full_width = T, font_size = 12)%>% 
  column_spec(2, bold = T, border_right = T, border_left = T, background = "yellow") %>% 
  row_spec(24:28, color = 'red')
Resumo dos comportamentos dos clientes na primeira visita
comportamento GERAL Sem compra Uma compra Duas compras Mais que duas compra
product_view 85.61% 86.78% 84.88% 84.45% 84.79%
is_search 53.83% 69.42% 40.55% 43.93% 48.9%
add_to_cart 46.44% 46.88% 46.61% 45.02% 45.64%
qtt_cross_device 39.34% 28.81% 45.66% 48.69% 49.28%
is_login 39.12% 50.97% 31.39% 29.52% 29.11%
checkout 37.16% 35.03% 40.38% 36.49% 35.01%
is_social_login 29.28% 36.07% 23.54% 25.03% 26.87%
bounce_sessions 26.22% 20.65% 30.61% 30.11% 28.91%
is_menu 25.13% 27.8% 22.63% 23.73% 24.74%
is_purchase 22.38% 9.02% 33.97% 29.5% 27.49%
is_view_sizes 21.14% 13.32% 27.71% 26.02% 24.1%
is_filter 20.35% 19.16% 20.54% 22.08% 22.58%
home_views 19.85% 13.27% 23.22% 26.12% 27.64%
is_my_account 17.5% 16.48% 18.98% 17.39% 16.46%
remove_from_cart 13.75% 16.75% 10.56% 12.24% 14.65%
is_sort 10.69% 12.89% 8.41% 9.72% 10.97%
is_size_guide 8.08% 8.21% 7.43% 8.43% 9.54%
is_fit_finder 6.38% 7.37% 5.26% 5.86% 6.97%
is_image_search 5.68% 8.64% 3.39% 3.67% 4.06%
add_to_favorites 5.15% 6.38% 4.29% 4.25% 4.24%
is_content 4.32% 2.96% 5.06% 5.58% 5.81%
is_view_favorites 2.54% 3.37% 1.95% 1.91% 1.93%
is_faq 1.29% 0.96% 1.52% 1.53% 1.54%
is_forgot_password 0.33% 0.25% 0.42% 0.37% 0.33%
is_mylook 0% 0% 0% 0% 0%
is_another_color 0% 0% 0% 0% 0%
is_dft_eco 0% 0% 0% 0% 0%
is_weekly_campaign 0% 0% 0% 0% 0%
correlacao <- base %>% 
  select(is_filter,is_sort,is_size_guide,is_fit_finder,remove_from_cart,is_login,is_social_login,
         is_search,visitduration,qtt_cross_device,product_view,add_to_cart,
         is_my_account,add_to_favorites,is_view_favorites,is_content,is_image_search,bounce_sessions,
         is_menu,is_faq,is_view_sizes,checkout,is_purchase
         ) %>%
  mutate(product_view = ifelse(product_view>0,1,0),
         add_to_cart = ifelse(add_to_cart>0,1,0),
         add_to_favorites = ifelse(add_to_favorites>0,1,0),
         remove_from_cart = ifelse(remove_from_cart>0,1,0),
         checkout = ifelse(checkout>0,1,0),
         is_purchase = ifelse(is_purchase>0,1,0),
         is_my_account = ifelse(is_my_account>0,1,0),
         #is_mylook = round(ifelse(is_mylook>0,1,0),2),
         is_content = ifelse(is_content>0,1,0),
         is_faq = ifelse(is_faq>0,1,0),
         is_login = ifelse(is_login>0,1,0),
         is_social_login = ifelse(is_social_login>0,1,0),
         #is_forgot_password = ifelse(is_forgot_password>0,1,0),
         is_search = ifelse(is_search>0,1,0),
         is_filter = ifelse(is_filter>0,1,0),
         is_menu = ifelse(is_menu>0,1,0),
         is_sort = ifelse(is_sort>0,1,0),
         is_view_favorites = ifelse(is_view_favorites>0,1,0),
         is_view_sizes = ifelse(is_view_sizes>0,1,0),
         is_size_guide = ifelse(is_size_guide>0,1,0),
         is_fit_finder = ifelse(is_fit_finder>0,1,0),
         #is_another_color = ifelse(is_another_color>0,1,0),
         qtt_cross_device = ifelse(qtt_cross_device>0,1,0),
         is_image_search = ifelse(is_image_search>0,1,0),
         #is_dft_eco = ifelse(is_dft_eco>0,1,0),
         #is_weekly_campaign = ifelse(is_weekly_campaign>0,1,0),
         bounce_sessions = ifelse(bounce_sessions>0,1,0),
         #home_views = ifelse(home_views>0,1,0)
         )

M <- cor(correlacao)

corrplot(M, method = "color", type ="lower", 
         #order="hclust",
         addCoef.col = "black", tl.col="black",
         tl.srt=45, sig.level = 0.01, insig="blank", diag=FALSE, number.cex=.3, tl.cex = .6)

Variaveis

g_legend<-function(a.gplot){
  tmp <- ggplot_gtable(ggplot_build(a.gplot))
  leg <- which(sapply(tmp$grobs, function(x) x$name) == "guide-box")
  legend <- tmp$grobs[[leg]]
  return(legend)}



base %>% 
  mutate(is_purchase = ifelse(qtd_compras>0,1,0)) %>% 
  select(pk_customer, is_filter,is_sort,is_size_guide,is_fit_finder,remove_from_cart,is_login,is_social_login,
         is_search,qtt_cross_device,product_view,add_to_cart,
         is_my_account,add_to_favorites,is_view_favorites,is_content,
         is_menu,is_faq,is_view_sizes,checkout,is_purchase,bounce_sessions,is_image_search,is_purchase,home_views
         ) %>%
  melt(id.vars = c("pk_customer", "is_purchase")) %>% 
  group_by(is_purchase,variable) %>% 
  mutate(value = ifelse(value>=1,1,0)) %>% 
  summarise(contagem = sum(value)) %>% 
  filter(is_purchase == 1) %>% 
  inner_join(
    base %>% 
      mutate(is_purchase = ifelse(qtd_compras>0,1,0)) %>% 
       select(pk_customer, is_filter,is_sort,is_size_guide,is_fit_finder,remove_from_cart,is_login,is_social_login,
         is_search,visitduration,qtt_cross_device,product_view,add_to_cart,
         is_my_account,add_to_favorites,is_view_favorites,is_content,
         is_menu,is_faq,is_view_sizes,checkout,is_purchase,bounce_sessions,is_image_search,is_purchase,home_views
         ) %>%
      melt(id.vars = c("pk_customer")) %>% 
      group_by(variable) %>% 
      filter(value > 0) %>% 
      summarise(total = n()),
    by = 'variable'
  ) %>% 
  mutate(porcentagem = contagem/total) %>% 
  ggplot() +
  geom_col(aes(y=reorder(variable, porcentagem), x=porcentagem, fill= 'variable'), show.legend = F)+
  geom_vline(xintercept = media_compra, lty = 5, alpha = 0.4)+
  scale_x_continuous(labels = scales::percent_format(), breaks = seq(0,1, by = 0.15))+
   labs(title = "Porcentagem de clientes com compra por comportamento",
       x = "Porcentagem",
       y = "Comportamento"
       )

Página de Entrada

Quantidade de Clientes por Página de entrada
first_page_type clientes porcentagem_clientes porcentagem_compras
Catalog 271951 36.03% 47.72%
Product 248375 32.91% 58.87%
Homepage 137300 18.19% 71.87%
Outros 97114 12.87% 66.92%

View Sizes

grupo Quantidade_clientes Porcentagem_compra
Clientes com View Sizes 159585 73.7%

plot1 <- x %>% 
      select(pk_customer,is_social_login,is_login,is_search,is_size_guide,is_fit_finder,is_filter,is_sort,
             visitduration,product_view,add_to_cart,remove_from_cart,add_to_favorites,is_view_favorites,
             is_content,is_my_account,is_menu,is_faq,qtt_cross_device,
             checkout,flag_teve_compra) %>% 
  melt(id.vars = c("pk_customer", "flag_teve_compra")) %>% 
  filter(value > 0,
         !is.na(value)) %>% 
  group_by(variable,flag_teve_compra) %>% 
  summarise(porcentagem = n()/total) %>% 
  ggplot() +
  geom_col(aes(x=porcentagem, y=reorder(variable,porcentagem), fill = as.factor(flag_teve_compra)))+
  scale_x_continuous(labels = scales::percent_format(), breaks = seq(0,1, by = 0.25))+
  theme(legend.position="bottom",
        axis.text = element_text(size = 8),
        axis.text.x = element_text(size = 8)
        )+
   labs(x = "Quantidade de Clientes",
       y = "Comportamentos",
       fill = "Flag Compra"
       )

plot2 <- x %>% 
      select(pk_customer,is_social_login,is_login,is_search,is_size_guide,is_fit_finder,is_filter,is_sort,
             visitduration,product_view,add_to_cart,remove_from_cart,add_to_favorites,is_view_favorites,
             is_content,is_my_account,is_menu,is_faq,qtt_cross_device,
             checkout,flag_teve_compra) %>% 
  melt(id.vars = c("pk_customer", "flag_teve_compra")) %>% 
  filter(value > 0,
         !is.na(value)) %>% 
  ggplot() +
  geom_bar(aes(y=reorder(variable,variable,length), fill = as.factor(flag_teve_compra)), position = 'fill')+
  geom_vline(xintercept = porcentagem_compra, lty = 5, alpha = 0.4)+
  scale_x_continuous(labels = scales::percent_format(), breaks = seq(0,1, by = 0.25))+
   labs(x = "Porcentagem",
       y = "",
       colour = "Comportamento"
       )

mylegend<-g_legend(plot1)

grid.arrange(arrangeGrob(plot1 + theme(legend.position="none"),
                         plot2 + theme(legend.position="none"),
                         top = 'Compras com Vuew Sizes junto com outros comportamentos',
                         nrow=1),
             mylegend, nrow=2,heights=c(10, 1))

Home Views

grupo Quantidade_clientes Porcentagem_compra
Clientes com Home Views 149788 72.09%

plot1 <- x %>% 
      select(pk_customer,is_social_login,is_login,is_search,is_size_guide,is_fit_finder,is_filter,is_sort,
             visitduration,product_view,add_to_cart,remove_from_cart,add_to_favorites,is_view_favorites,
             is_content,is_my_account,is_menu,is_faq,qtt_cross_device,
             checkout,flag_teve_compra) %>% 
  melt(id.vars = c("pk_customer", "flag_teve_compra")) %>% 
  filter(value > 0,
         !is.na(value)) %>% 
  group_by(variable,flag_teve_compra) %>% 
  summarise(porcentagem = n()/total) %>% 
  ggplot() +
  geom_col(aes(x=porcentagem, y=reorder(variable,porcentagem), fill = as.factor(flag_teve_compra)))+
  scale_x_continuous(labels = scales::percent_format(), breaks = seq(0,1, by = 0.25))+
  theme(legend.position="bottom",
        axis.text = element_text(size = 8),
        axis.text.x = element_text(size = 8)
        )+
   labs(x = "Quantidade de Clientes",
       y = "Comportamentos",
       fill = "Flag Compra"
       )

plot2 <- x %>% 
      select(pk_customer,is_social_login,is_login,is_search,is_size_guide,is_fit_finder,is_filter,is_sort,
             visitduration,product_view,add_to_cart,remove_from_cart,add_to_favorites,is_view_favorites,
             is_content,is_my_account,is_menu,is_faq,qtt_cross_device,
             checkout,flag_teve_compra) %>% 
  melt(id.vars = c("pk_customer", "flag_teve_compra")) %>% 
  filter(value > 0,
         !is.na(value)) %>% 
  ggplot() +
  geom_bar(aes(y=reorder(variable,variable,length), fill = as.factor(flag_teve_compra)), position = 'fill')+
  geom_vline(xintercept = porcentagem_compra, lty = 5, alpha = 0.4)+
  scale_x_continuous(labels = scales::percent_format(), breaks = seq(0,1, by = 0.25))+
   labs(x = "Porcentagem",
       y = "",
       colour = "Comportamento"
       )

mylegend<-g_legend(plot1)

grid.arrange(arrangeGrob(plot1 + theme(legend.position="none"),
                         plot2 + theme(legend.position="none"),
                         top = 'Compras com Vuew Sizes junto com outros comportamentos',
                         nrow=1),
             mylegend, nrow=2,heights=c(10, 1))

Content

grupo Quantidade_clientes Porcentagem_compra
Clientes com Conteúdo 32595 71.43%

plot1 <- x %>% 
      select(pk_customer,is_social_login,is_login,is_search,is_size_guide,is_fit_finder,is_filter,is_sort,
             visitduration,product_view,add_to_cart,remove_from_cart,add_to_favorites,is_view_favorites,
             is_my_account,is_menu,is_view_sizes,is_faq,qtt_cross_device,
             checkout,flag_teve_compra) %>% 
  melt(id.vars = c("pk_customer", "flag_teve_compra")) %>% 
  filter(value > 0,
         !is.na(value)) %>% 
  group_by(variable,flag_teve_compra) %>% 
  summarise(porcentagem = n()/total) %>% 
  ggplot() +
  geom_col(aes(x=porcentagem, y=reorder(variable,porcentagem), fill = as.factor(flag_teve_compra)))+
  scale_x_continuous(labels = scales::percent_format(), breaks = seq(0,1, by = 0.25))+
  theme(legend.position="bottom",
        axis.text = element_text(size = 8),
        axis.text.x = element_text(size = 8)
        )+
   labs(x = "Quantidade de Clientes",
       y = "Comportamentos",
       fill = "Flag Compra"
       )


plot2 <- x %>% 
      select(pk_customer,is_social_login,is_login,is_search,is_size_guide,is_fit_finder,is_filter,is_sort,
             visitduration,product_view,add_to_cart,remove_from_cart,add_to_favorites,is_view_favorites,
             is_my_account,is_menu,is_view_sizes,is_faq,qtt_cross_device,
             checkout,flag_teve_compra) %>% 
  melt(id.vars = c("pk_customer", "flag_teve_compra")) %>% 
  filter(value > 0,
         !is.na(value)) %>% 
  ggplot() +
  geom_bar(aes(y=reorder(variable,variable,length), fill = as.factor(flag_teve_compra)), position = 'fill')+
  geom_vline(xintercept = porcentagem_compra, lty = 5, alpha = 0.4)+
  scale_x_continuous(labels = scales::percent_format(), breaks = seq(0,1, by = 0.25))+
   labs(x = "Porcentagem",
       y = "",
       colour = "Comportamento"
       )

mylegend<-g_legend(plot1)

grid.arrange(arrangeGrob(plot1 + theme(legend.position="none"),
                         plot2 + theme(legend.position="none"),
                         top = 'Compras com Content junto com outros comportamentos',
                         nrow=1),
             mylegend, nrow=2,heights=c(10, 1))

Cross devices

grupo Quantidade_clientes Porcentagem_compra
Clientes com Cross Device 296920 69.43%

plot1 <- x %>% 
      select(pk_customer,is_social_login,is_login,is_search,is_size_guide,is_fit_finder,is_filter,is_sort,
             visitduration,product_view,add_to_cart,remove_from_cart,add_to_favorites,is_view_favorites,
             is_content,is_my_account,is_menu,is_view_sizes,is_faq,
             checkout,flag_teve_compra) %>% 
  melt(id.vars = c("pk_customer", "flag_teve_compra")) %>% 
  filter(value > 0,
         !is.na(value)) %>% 
  group_by(variable,flag_teve_compra) %>% 
  summarise(porcentagem = n()/total) %>% 
  ggplot() +
  geom_col(aes(x=porcentagem, y=reorder(variable,porcentagem), fill = as.factor(flag_teve_compra)))+
  scale_x_continuous(labels = scales::percent_format(), breaks = seq(0,1, by = 0.25))+
  theme(legend.position="bottom",
        axis.text = element_text(size = 8),
        axis.text.x = element_text(size = 8)
        )+
   labs(x = "Quantidade de Clientes",
       y = "Comportamentos",
       fill = "Flag Compra"
       )

plot2 <- x %>% 
      select(pk_customer,is_social_login,is_login,is_search,is_size_guide,is_fit_finder,is_filter,is_sort,
             visitduration,product_view,add_to_cart,remove_from_cart,add_to_favorites,is_view_favorites,
             is_content,is_my_account,is_menu,is_view_sizes,is_faq,
             checkout,flag_teve_compra) %>% 
  melt(id.vars = c("pk_customer", "flag_teve_compra")) %>% 
  filter(value > 0,
         !is.na(value)) %>% 
  ggplot() +
  geom_bar(aes(y=reorder(variable,variable,length), fill = as.factor(flag_teve_compra)), position = 'fill')+
  geom_vline(xintercept = porcentagem_compra, lty = 5, alpha = 0.4)+
  scale_x_continuous(labels = scales::percent_format(), breaks = seq(0,1, by = 0.25))+
   labs(x = "Porcentagem",
       y = "",
       colour = "Comportamento"
       )

mylegend<-g_legend(plot1)

grid.arrange(arrangeGrob(plot1 + theme(legend.position="none"),
                         plot2 + theme(legend.position="none"),
                         top = 'Compras com Cross Device junto com outros comportamentos',
                         nrow=1),
             mylegend, nrow=2,heights=c(10, 1))

FAQ

grupo Quantidade_clientes Porcentagem_compra
Clientes com FAQ 9723 68.92%

plot1 <- x %>% 
      select(pk_customer,is_social_login,is_login,is_search,is_size_guide,is_fit_finder,is_filter,is_sort,
             visitduration,product_view,add_to_cart,remove_from_cart,add_to_favorites,is_view_favorites,
             is_content,is_my_account,is_menu,is_view_sizes,qtt_cross_device,
             checkout,flag_teve_compra) %>% 
  melt(id.vars = c("pk_customer", "flag_teve_compra")) %>% 
  filter(value > 0,
         !is.na(value)) %>% 
  group_by(variable,flag_teve_compra) %>% 
  summarise(porcentagem = n()/total) %>% 
  ggplot() +
  geom_col(aes(x=porcentagem, y=reorder(variable,porcentagem), fill = as.factor(flag_teve_compra)))+
  scale_x_continuous(labels = scales::percent_format(), breaks = seq(0,1, by = 0.25))+
  theme(legend.position="bottom",
        axis.text = element_text(size = 8),
        axis.text.x = element_text(size = 8)
        )+
   labs(x = "Quantidade de Clientes",
       y = "Comportamentos",
       fill = "Flag Compra"
       )

plot2 <- x %>% 
      select(pk_customer,is_social_login,is_login,is_search,is_size_guide,is_fit_finder,is_filter,is_sort,
             visitduration,product_view,add_to_cart,remove_from_cart,add_to_favorites,is_view_favorites,
             is_content,is_my_account,is_menu,is_view_sizes,qtt_cross_device,
             checkout,flag_teve_compra) %>% 
  melt(id.vars = c("pk_customer", "flag_teve_compra")) %>% 
  filter(value > 0,
         !is.na(value)) %>% 
  ggplot() +
  geom_bar(aes(y=reorder(variable,variable,length), fill = as.factor(flag_teve_compra)), position = 'fill')+
  geom_vline(xintercept = porcentagem_compra, lty = 5, alpha = 0.4)+
  scale_x_continuous(labels = scales::percent_format(), breaks = seq(0,1, by = 0.25))+
   labs(x = "Porcentagem",
       y = "",
       colour = "Comportamento"
       )

mylegend<-g_legend(plot1)

grid.arrange(arrangeGrob(plot1 + theme(legend.position="none"),
                         plot2 + theme(legend.position="none"),
                         top = 'Compras com FAQ junto com outros comportamentos',
                         nrow=1),
             mylegend, nrow=2,heights=c(10, 1))

Bounce

grupo Quantidade_clientes Porcentagem_compra
Clientes com Bounce 197914 67.12%

plot1 <- x %>% 
      select(pk_customer,is_social_login,is_login,is_search,is_size_guide,is_fit_finder,is_filter,is_sort,
             visitduration,product_view,remove_from_cart,add_to_favorites,is_view_favorites,
             is_content,is_my_account,is_menu,is_view_sizes,is_faq,qtt_cross_device,
             checkout,flag_teve_compra) %>% 
  melt(id.vars = c("pk_customer", "flag_teve_compra")) %>% 
  filter(value > 0,
         !is.na(value)) %>% 
  group_by(variable,flag_teve_compra) %>% 
  summarise(porcentagem = n()/total) %>% 
  ggplot() +
  geom_col(aes(x=porcentagem, y=reorder(variable,porcentagem), fill = as.factor(flag_teve_compra)))+
  scale_x_continuous(labels = scales::percent_format(), breaks = seq(0,1, by = 0.25))+
  theme(legend.position="bottom",
        axis.text = element_text(size = 8),
        axis.text.x = element_text(size = 8)
        )+
   labs(x = "Quantidade de Clientes",
       y = "Comportamentos",
       fill = "Flag Compra"
       )


plot2 <- x %>% 
      select(pk_customer,is_social_login,is_login,is_search,is_size_guide,is_fit_finder,is_filter,is_sort,
             visitduration,product_view,remove_from_cart,add_to_favorites,is_view_favorites,
             is_content,is_my_account,is_menu,is_view_sizes,is_faq,qtt_cross_device,
             checkout,flag_teve_compra) %>% 
  melt(id.vars = c("pk_customer", "flag_teve_compra")) %>% 
  filter(value > 0,
         !is.na(value)) %>% 
  ggplot() +
  geom_bar(aes(y=reorder(variable,variable,length), fill = as.factor(flag_teve_compra)), position = 'fill')+
  geom_vline(xintercept = porcentagem_compra, lty = 5, alpha = 0.4)+
  scale_x_continuous(labels = scales::percent_format(), breaks = seq(0,1, by = 0.25))+
   labs(x = "Porcentagem",
       y = "",
       colour = "Comportamento"
       )

mylegend<-g_legend(plot1)

grid.arrange(arrangeGrob(plot1 + theme(legend.position="none"),
                         plot2 + theme(legend.position="none"),
                         top = 'Compras com Add to Cart junto com outros comportamentos',
                         nrow=1),
             mylegend, nrow=2,heights=c(10, 1))

My Account

grupo Quantidade_clientes Porcentagem_compra
Clientes com My Account 132067 60.68%

plot1 <- x %>% 
      select(pk_customer,is_social_login,is_login,is_search,is_size_guide,is_fit_finder,is_filter,is_sort,
             visitduration,product_view,add_to_cart,remove_from_cart,add_to_favorites,is_view_favorites,
             is_content,is_menu,is_view_sizes,is_faq,qtt_cross_device,
             checkout,flag_teve_compra) %>% 
  melt(id.vars = c("pk_customer", "flag_teve_compra")) %>% 
  filter(value > 0,
         !is.na(value)) %>% 
  group_by(variable,flag_teve_compra) %>% 
  summarise(porcentagem = n()/total) %>% 
  ggplot() +
  geom_col(aes(x=porcentagem, y=reorder(variable,porcentagem), fill = as.factor(flag_teve_compra)))+
  scale_x_continuous(labels = scales::percent_format(), breaks = seq(0,1, by = 0.25))+
  theme(legend.position="bottom",
        axis.text = element_text(size = 8),
        axis.text.x = element_text(size = 8)
        )+
   labs(x = "Quantidade de Clientes",
       y = "Comportamentos",
       fill = "Flag Compra"
       )


plot2 <- x %>% 
      select(pk_customer,is_social_login,is_login,is_search,is_size_guide,is_fit_finder,is_filter,is_sort,
             visitduration,product_view,add_to_cart,remove_from_cart,add_to_favorites,is_view_favorites,
             is_content,is_menu,is_view_sizes,is_faq,qtt_cross_device,
             checkout,flag_teve_compra) %>% 
  melt(id.vars = c("pk_customer", "flag_teve_compra")) %>% 
  filter(value > 0,
         !is.na(value)) %>% 
  ggplot() +
  geom_bar(aes(y=reorder(variable,variable,length), fill = as.factor(flag_teve_compra)), position = 'fill')+
  geom_vline(xintercept = porcentagem_compra, lty = 5, alpha = 0.4)+
  scale_x_continuous(labels = scales::percent_format(), breaks = seq(0,1, by = 0.25))+
   labs(x = "Porcentagem",
       y = "",
       colour = "Comportamento"
       )

mylegend<-g_legend(plot1)

grid.arrange(arrangeGrob(plot1 + theme(legend.position="none"),
                         plot2 + theme(legend.position="none"),
                         top = 'Compras com My Account junto com outros comportamentos',
                         nrow=1),
             mylegend, nrow=2,heights=c(10, 1))

Checkout

grupo Quantidade_clientes Porcentagem_compra
Clientes com Checkout 280425 60.63%

plot1 <- x %>% 
      select(pk_customer,is_social_login,is_login,is_search,is_size_guide,is_fit_finder,is_filter,is_sort,
             visitduration,product_view,add_to_cart,remove_from_cart,add_to_favorites,is_view_favorites,
             is_content,is_my_account,is_menu,is_view_sizes,is_faq,qtt_cross_device,
             flag_teve_compra) %>% 
  melt(id.vars = c("pk_customer", "flag_teve_compra")) %>% 
  filter(value > 0,
         !is.na(value)) %>% 
  group_by(variable,flag_teve_compra) %>% 
  summarise(porcentagem = n()/total) %>% 
  ggplot() +
  geom_col(aes(x=porcentagem, y=reorder(variable,porcentagem), fill = as.factor(flag_teve_compra)))+
  scale_x_continuous(labels = scales::percent_format(), breaks = seq(0,1, by = 0.25))+
  theme(legend.position="bottom",
        axis.text = element_text(size = 8),
        axis.text.x = element_text(size = 8)
        )+
   labs(x = "Quantidade de Clientes",
       y = "Comportamentos",
       fill = "Flag Compra"
       )


plot2 <- x %>% 
      select(pk_customer,is_social_login,is_login,is_search,is_size_guide,is_fit_finder,is_filter,is_sort,
             visitduration,product_view,add_to_cart,remove_from_cart,add_to_favorites,is_view_favorites,
             is_content,is_my_account,is_menu,is_view_sizes,is_faq,qtt_cross_device,
             flag_teve_compra) %>% 
  melt(id.vars = c("pk_customer", "flag_teve_compra")) %>% 
  filter(value > 0,
         !is.na(value)) %>% 
  ggplot() +
  geom_bar(aes(y=reorder(variable,variable,length), fill = as.factor(flag_teve_compra)), position = 'fill')+
  geom_vline(xintercept = porcentagem_compra, lty = 5, alpha = 0.4)+
  scale_x_continuous(labels = scales::percent_format(), breaks = seq(0,1, by = 0.25))+
   labs(x = "Porcentagem",
       y = "",
       colour = "Comportamento"
       )

mylegend<-g_legend(plot1)

grid.arrange(arrangeGrob(plot1 + theme(legend.position="none"),
                         plot2 + theme(legend.position="none"),
                         top = 'Compras com Checkout junto com outros comportamentos',
                         nrow=1),
             mylegend, nrow=2,heights=c(10, 1))

Filter

grupo Quantidade_clientes Porcentagem_compra
Clientes com Filtro 153556 60.69%

plot1 <- x %>% 
      select(pk_customer,is_social_login,is_login,is_search,is_size_guide,is_fit_finder,is_sort,
             visitduration,product_view,add_to_cart,remove_from_cart,add_to_favorites,is_view_favorites,
             is_content,is_my_account,is_menu,is_view_sizes,is_faq,qtt_cross_device,
             checkout,flag_teve_compra) %>% 
  melt(id.vars = c("pk_customer", "flag_teve_compra")) %>% 
  filter(value > 0,
         !is.na(value)) %>% 
  group_by(variable,flag_teve_compra) %>% 
  summarise(porcentagem = n()/total) %>% 
  ggplot() +
  geom_col(aes(x=porcentagem, y=reorder(variable,porcentagem), fill = as.factor(flag_teve_compra)))+
  scale_x_continuous(labels = scales::percent_format(), breaks = seq(0,1, by = 0.25))+
  theme(legend.position="bottom",
        axis.text = element_text(size = 8),
        axis.text.x = element_text(size = 8)
        )+
   labs(x = "Quantidade de Clientes",
       y = "Comportamentos",
       fill = "Flag Compra"
       )


plot2 <- x %>% 
      select(pk_customer,is_social_login,is_login,is_search,is_size_guide,is_fit_finder,is_sort,
             visitduration,product_view,add_to_cart,remove_from_cart,add_to_favorites,is_view_favorites,
             is_content,is_my_account,is_menu,is_view_sizes,is_faq,qtt_cross_device,
             checkout,flag_teve_compra) %>% 
  melt(id.vars = c("pk_customer", "flag_teve_compra")) %>% 
  filter(value > 0,
         !is.na(value)) %>% 
  ggplot() +
  geom_bar(aes(y=reorder(variable,variable,length), fill = as.factor(flag_teve_compra)), position = 'fill')+
  geom_vline(xintercept = porcentagem_compra, lty = 5, alpha = 0.4)+
  scale_x_continuous(labels = scales::percent_format(), breaks = seq(0,1, by = 0.25))+
   labs(x = "Porcentagem",
       y = "",
       colour = "Comportamento"
       )

mylegend<-g_legend(plot1)

grid.arrange(arrangeGrob(plot1 + theme(legend.position="none"),
                         plot2 + theme(legend.position="none"),
                         top = 'Compras com Filter junto com outros comportamentos',
                         nrow=1),
             mylegend, nrow=2,heights=c(10, 1))

Add to Cart

grupo Quantidade_clientes Porcentagem_compra
Clientes com Add to Cart 350525 57.85%

plot1 <- x %>% 
      select(pk_customer,is_social_login,is_login,is_search,is_size_guide,is_fit_finder,is_filter,is_sort,
             visitduration,product_view,remove_from_cart,add_to_favorites,is_view_favorites,
             is_content,is_my_account,is_menu,is_view_sizes,is_faq,qtt_cross_device,
             checkout,flag_teve_compra) %>% 
  melt(id.vars = c("pk_customer", "flag_teve_compra")) %>% 
  filter(value > 0,
         !is.na(value)) %>% 
  group_by(variable,flag_teve_compra) %>% 
  summarise(porcentagem = n()/total) %>% 
  ggplot() +
  geom_col(aes(x=porcentagem, y=reorder(variable,porcentagem), fill = as.factor(flag_teve_compra)))+
  scale_x_continuous(labels = scales::percent_format(), breaks = seq(0,1, by = 0.25))+
  theme(legend.position="bottom",
        axis.text = element_text(size = 8),
        axis.text.x = element_text(size = 8)
        )+
   labs(x = "Quantidade de Clientes",
       y = "Comportamentos",
       fill = "Flag Compra"
       )


plot2 <- x %>% 
      select(pk_customer,is_social_login,is_login,is_search,is_size_guide,is_fit_finder,is_filter,is_sort,
             visitduration,product_view,remove_from_cart,add_to_favorites,is_view_favorites,
             is_content,is_my_account,is_menu,is_view_sizes,is_faq,qtt_cross_device,
             checkout,flag_teve_compra) %>% 
  melt(id.vars = c("pk_customer", "flag_teve_compra")) %>% 
  filter(value > 0,
         !is.na(value)) %>% 
  ggplot() +
  geom_bar(aes(y=reorder(variable,variable,length), fill = as.factor(flag_teve_compra)), position = 'fill')+
  geom_vline(xintercept = porcentagem_compra, lty = 5, alpha = 0.4)+
  scale_x_continuous(labels = scales::percent_format(), breaks = seq(0,1, by = 0.25))+
   labs(x = "Porcentagem",
       y = "",
       colour = "Comportamento"
       )

mylegend<-g_legend(plot1)

grid.arrange(arrangeGrob(plot1 + theme(legend.position="none"),
                         plot2 + theme(legend.position="none"),
                         top = 'Compras com Add to Cart junto com outros comportamentos',
                         nrow=1),
             mylegend, nrow=2,heights=c(10, 1))

Size Guide

grupo Quantidade_clientes Porcentagem_compra
Clientes com Size Guide 60987 57.61%

plot1 <- x %>% 
      select(pk_customer,is_social_login,is_login,is_search,is_fit_finder,is_filter,is_sort,
             visitduration,product_view,add_to_cart,remove_from_cart,add_to_favorites,is_view_favorites,
             is_content,is_my_account,is_menu,is_view_sizes,is_faq,qtt_cross_device,
             checkout,flag_teve_compra) %>% 
  melt(id.vars = c("pk_customer", "flag_teve_compra")) %>% 
  filter(value > 0,
         !is.na(value)) %>% 
  group_by(variable,flag_teve_compra) %>% 
  summarise(porcentagem = n()/total) %>% 
  ggplot() +
  geom_col(aes(x=porcentagem, y=reorder(variable,porcentagem), fill = as.factor(flag_teve_compra)))+
  scale_x_continuous(labels = scales::percent_format(), breaks = seq(0,1, by = 0.25))+
  theme(legend.position="bottom",
        axis.text = element_text(size = 8),
        axis.text.x = element_text(size = 8)
        )+
   labs(x = "Quantidade de Clientes",
       y = "Comportamentos",
       fill = "Flag Compra"
       )

plot2 <- x %>% 
      select(pk_customer,is_social_login,is_login,is_search,is_fit_finder,is_filter,is_sort,
             visitduration,product_view,add_to_cart,remove_from_cart,add_to_favorites,is_view_favorites,
             is_content,is_my_account,is_menu,is_view_sizes,is_faq,qtt_cross_device,
             checkout,flag_teve_compra) %>% 
  melt(id.vars = c("pk_customer", "flag_teve_compra")) %>% 
  filter(value > 0,
         !is.na(value)) %>% 
  ggplot() +
  geom_bar(aes(y=reorder(variable,variable,length), fill = as.factor(flag_teve_compra)), position = 'fill')+
  geom_vline(xintercept = porcentagem_compra, lty = 5, alpha = 0.4)+
  scale_x_continuous(labels = scales::percent_format(), breaks = seq(0,1, by = 0.25))+
   labs(x = "Porcentagem",
       y = "",
       colour = "Comportamento"
       )

mylegend<-g_legend(plot1)

grid.arrange(arrangeGrob(plot1 + theme(legend.position="none"),
                         plot2 + theme(legend.position="none"),
                         top = 'Compras com Size Guide junto com outros comportamentos',
                         nrow=1),
             mylegend, nrow=2,heights=c(10, 1))

Product View

grupo Quantidade_clientes Porcentagem_compra
Clientes com Product View 646148 57.68%

plot1 <- x %>% 
      select(pk_customer,is_social_login,is_login,is_search,is_size_guide,is_fit_finder,is_filter,is_sort,
             visitduration,add_to_cart,remove_from_cart,add_to_favorites,is_view_favorites,
             is_content,is_my_account,is_menu,is_view_sizes,is_faq,qtt_cross_device,
             checkout,flag_teve_compra) %>% 
  melt(id.vars = c("pk_customer", "flag_teve_compra")) %>% 
  filter(value > 0,
         !is.na(value)) %>% 
  group_by(variable,flag_teve_compra) %>% 
  summarise(porcentagem = n()/total) %>% 
  ggplot() +
  geom_col(aes(x=porcentagem, y=reorder(variable,porcentagem), fill = as.factor(flag_teve_compra)))+
  scale_x_continuous(labels = scales::percent_format(), breaks = seq(0,1, by = 0.25))+
  theme(legend.position="bottom",
        axis.text = element_text(size = 8),
        axis.text.x = element_text(size = 8)
        )+
   labs(x = "Quantidade de Clientes",
       y = "Comportamentos",
       fill = "Flag Compra"
       )


plot2 <- x %>% 
      select(pk_customer,is_social_login,is_login,is_search,is_size_guide,is_fit_finder,is_filter,is_sort,
             visitduration,add_to_cart,remove_from_cart,add_to_favorites,is_view_favorites,
             is_content,is_my_account,is_menu,is_view_sizes,is_faq,qtt_cross_device,
             checkout,flag_teve_compra) %>% 
  melt(id.vars = c("pk_customer", "flag_teve_compra")) %>% 
  filter(value > 0,
         !is.na(value)) %>% 
  ggplot() +
  geom_bar(aes(y=reorder(variable,variable,length), fill = as.factor(flag_teve_compra)), position = 'fill')+
  geom_vline(xintercept = porcentagem_compra, lty = 5, alpha = 0.4)+
  scale_x_continuous(labels = scales::percent_format(), breaks = seq(0,1, by = 0.25))+
   labs(x = "Porcentagem",
       y = "",
       colour = "Comportamento"
       )
  

mylegend<-g_legend(plot1)

grid.arrange(arrangeGrob(plot1 + theme(legend.position="none"),
                         plot2 + theme(legend.position="none"),
                         top = 'Compras com Product Views junto com outros comportamentos',
                         nrow=1),
             mylegend, nrow=2,heights=c(10, 1))

Fit Finder

grupo Quantidade_clientes Porcentagem_compra
Clientes com Fit Finder 48170 51.81%

plot1 <- x %>% 
      select(pk_customer,is_social_login,is_login,is_search,is_size_guide,is_filter,is_sort,
             visitduration,product_view,add_to_cart,remove_from_cart,add_to_favorites,is_view_favorites,
             is_content,is_my_account,is_menu,is_view_sizes,is_faq,qtt_cross_device,
             checkout,flag_teve_compra) %>% 
  melt(id.vars = c("pk_customer", "flag_teve_compra")) %>% 
  filter(value > 0,
         !is.na(value)) %>% 
  group_by(variable,flag_teve_compra) %>% 
  summarise(porcentagem = n()/total) %>% 
  ggplot() +
  geom_col(aes(x=porcentagem, y=reorder(variable,porcentagem), fill = as.factor(flag_teve_compra)))+
  scale_x_continuous(labels = scales::percent_format(), breaks = seq(0,1, by = 0.25))+
  theme(legend.position="bottom",
        axis.text = element_text(size = 8),
        axis.text.x = element_text(size = 8)
        )+
   labs(x = "Quantidade de Clientes",
       y = "Comportamentos",
       fill = "Flag Compra"
       )


plot2 <- x %>% 
      select(pk_customer,is_social_login,is_login,is_search,is_size_guide,is_filter,is_sort,
             visitduration,product_view,add_to_cart,remove_from_cart,add_to_favorites,is_view_favorites,
             is_content,is_my_account,is_menu,is_view_sizes,is_faq,qtt_cross_device,
             checkout,flag_teve_compra) %>% 
  melt(id.vars = c("pk_customer", "flag_teve_compra")) %>% 
  filter(value > 0,
         !is.na(value)) %>% 
  ggplot() +
  geom_bar(aes(y=reorder(variable,variable,length), fill = as.factor(flag_teve_compra)), position = 'fill')+
  geom_vline(xintercept = porcentagem_compra, lty = 5, alpha = 0.4)+
  scale_x_continuous(labels = scales::percent_format(), breaks = seq(0,1, by = 0.25))+
   labs(x = "Porcentagem",
       y = "",
       colour = "Comportamento"
       )

mylegend<-g_legend(plot1)

grid.arrange(arrangeGrob(plot1 + theme(legend.position="none"),
                         plot2 + theme(legend.position="none"),
                         top = 'Compras com Fit Finder junto com outros comportamentos',
                         nrow=1),
             mylegend, nrow=2,heights=c(10, 1))

Remove from Cart

grupo Quantidade_clientes Porcentagem_compra
Clientes com Remove From Cart 103801 49.15%

plot1 <- x %>% 
      select(pk_customer,is_social_login,is_login,is_search,is_size_guide,is_fit_finder,is_filter,is_sort,
             visitduration,product_view,add_to_cart,add_to_favorites,is_view_favorites,
             is_content,is_my_account,is_menu,is_view_sizes,is_faq,qtt_cross_device,
             checkout,flag_teve_compra) %>% 
  melt(id.vars = c("pk_customer", "flag_teve_compra")) %>% 
  filter(value > 0,
         !is.na(value)) %>% 
  group_by(variable,flag_teve_compra) %>% 
  summarise(porcentagem = n()/total) %>% 
  ggplot() +
  geom_col(aes(x=porcentagem, y=reorder(variable,porcentagem), fill = as.factor(flag_teve_compra)))+
  scale_x_continuous(labels = scales::percent_format(), breaks = seq(0,1, by = 0.25))+
  theme(legend.position="bottom",
        axis.text = element_text(size = 8),
        axis.text.x = element_text(size = 8)
        )+
   labs(x = "Quantidade de Clientes",
       y = "Comportamentos",
       fill = "Flag Compra"
       )


plot2 <- x %>% 
      select(pk_customer,is_social_login,is_login,is_search,is_size_guide,is_fit_finder,is_filter,is_sort,
             visitduration,product_view,add_to_cart,add_to_favorites,is_view_favorites,
             is_content,is_my_account,is_menu,is_view_sizes,is_faq,qtt_cross_device,
             checkout,flag_teve_compra) %>% 
  melt(id.vars = c("pk_customer", "flag_teve_compra")) %>% 
  filter(value > 0,
         !is.na(value)) %>% 
  ggplot() +
  geom_bar(aes(y=reorder(variable,variable,length), fill = as.factor(flag_teve_compra)), position = 'fill')+
  geom_vline(xintercept = porcentagem_compra, lty = 5, alpha = 0.4)+
  scale_x_continuous(labels = scales::percent_format(), breaks = seq(0,1, by = 0.25))+
   labs(x = "Porcentagem",
       y = "",
       colour = "Comportamento"
       )

mylegend<-g_legend(plot1)

grid.arrange(arrangeGrob(plot1 + theme(legend.position="none"),
                         plot2 + theme(legend.position="none"),
                         top = 'Compras com Remove from Favorites junto com outros comportamentos',
                         nrow=1),
             mylegend, nrow=2,heights=c(10, 1))

Add to Favorites

grupo Quantidade_clientes Porcentagem_compra
Clientes com Add To Favorites 38894 48.34%

plot1 <- x %>% 
      select(pk_customer,is_social_login,is_login,is_search,is_size_guide,is_fit_finder,is_filter,is_sort,
             visitduration,product_view,add_to_cart,remove_from_cart,is_view_favorites,
             is_content,is_my_account,is_menu,is_view_sizes,is_faq,qtt_cross_device,
             checkout,flag_teve_compra) %>% 
  melt(id.vars = c("pk_customer", "flag_teve_compra")) %>% 
  filter(value > 0,
         !is.na(value)) %>% 
  group_by(variable,flag_teve_compra) %>% 
  summarise(porcentagem = n()/total) %>% 
  ggplot() +
  geom_col(aes(x=porcentagem, y=reorder(variable,porcentagem), fill = as.factor(flag_teve_compra)))+
  scale_x_continuous(labels = scales::percent_format(), breaks = seq(0,1, by = 0.25))+
  theme(legend.position="bottom",
        axis.text = element_text(size = 8),
        axis.text.x = element_text(size = 8)
        )+
   labs(x = "Quantidade de Clientes",
       y = "Comportamentos",
       fill = "Flag Compra"
       )


plot2 <- x %>% 
      select(pk_customer,is_social_login,is_login,is_search,is_size_guide,is_fit_finder,is_filter,is_sort,
             visitduration,product_view,add_to_cart,remove_from_cart,is_view_favorites,
             is_content,is_my_account,is_menu,is_view_sizes,is_faq,qtt_cross_device,
             checkout,flag_teve_compra) %>% 
  melt(id.vars = c("pk_customer", "flag_teve_compra")) %>% 
  filter(value > 0,
         !is.na(value)) %>% 
  ggplot() +
  geom_bar(aes(y=reorder(variable,variable,length), fill = as.factor(flag_teve_compra)), position = 'fill')+
  geom_vline(xintercept = porcentagem_compra, lty = 5, alpha = 0.4)+
  scale_x_continuous(labels = scales::percent_format(), breaks = seq(0,1, by = 0.25))+
   labs(x = "Porcentagem",
       y = "",
       colour = "Comportamento"
       )

mylegend<-g_legend(plot1)

grid.arrange(arrangeGrob(plot1 + theme(legend.position="none"),
                         plot2 + theme(legend.position="none"),
                         top = 'Compras com Add to Favorites junto com outros comportamentos',
                         nrow=1),
             mylegend, nrow=2,heights=c(10, 1))

Sort

grupo Quantidade_clientes Porcentagem_compra
Clientes com Sort 80665 49.67%

plot1 <- x %>% 
      select(pk_customer,is_social_login,is_login,is_search,is_size_guide,is_fit_finder,is_filter,
             visitduration,product_view,add_to_cart,remove_from_cart,add_to_favorites,is_view_favorites,
             is_content,is_my_account,is_menu,is_view_sizes,is_faq,qtt_cross_device,
             checkout,flag_teve_compra) %>% 
  melt(id.vars = c("pk_customer", "flag_teve_compra")) %>% 
  filter(value > 0,
         !is.na(value)) %>% 
  group_by(variable,flag_teve_compra) %>% 
  summarise(porcentagem = n()/total) %>% 
  ggplot() +
  geom_col(aes(x=porcentagem, y=reorder(variable,porcentagem), fill = as.factor(flag_teve_compra)))+
  scale_x_continuous(labels = scales::percent_format(), breaks = seq(0,1, by = 0.25))+
  theme(legend.position="bottom",
        axis.text = element_text(size = 8),
        axis.text.x = element_text(size = 8)
        )+
   labs(x = "Quantidade de Clientes",
       y = "Comportamentos",
       fill = "Flag Compra"
       )


plot2 <- x %>% 
      select(pk_customer,is_social_login,is_login,is_search,is_size_guide,is_fit_finder,is_filter,
             visitduration,product_view,add_to_cart,remove_from_cart,add_to_favorites,is_view_favorites,
             is_content,is_my_account,is_menu,is_view_sizes,is_faq,qtt_cross_device,
             checkout,flag_teve_compra) %>% 
  melt(id.vars = c("pk_customer", "flag_teve_compra")) %>% 
  filter(value > 0,
         !is.na(value)) %>% 
  ggplot() +
  geom_bar(aes(y=reorder(variable,variable,length), fill = as.factor(flag_teve_compra)), position = 'fill')+
  geom_vline(xintercept = porcentagem_compra, lty = 5, alpha = 0.4)+
  scale_x_continuous(labels = scales::percent_format(), breaks = seq(0,1, by = 0.25))+
   labs(x = "Porcentagem",
       y = "",
       colour = "Comportamento"
       )

mylegend<-g_legend(plot1)

grid.arrange(arrangeGrob(plot1 + theme(legend.position="none"),
                         plot2 + theme(legend.position="none"),
                         top = 'Compras com Sort junto com outros comportamentos',
                         nrow=1),
             mylegend, nrow=2,heights=c(10, 1))

Login

grupo Quantidade_clientes Porcentagem_compra
Clientes com Login 295227 45.6%

plot1 <- x %>% 
      select(pk_customer,is_social_login,is_search,is_size_guide,is_fit_finder,is_filter,is_sort,
             visitduration,product_view,add_to_cart,remove_from_cart,add_to_favorites,is_view_favorites,
             is_content,is_my_account,is_menu,is_view_sizes,is_faq,qtt_cross_device,
             checkout,flag_teve_compra) %>% 
  melt(id.vars = c("pk_customer", "flag_teve_compra")) %>% 
  filter(value > 0,
         !is.na(value)) %>% 
  group_by(variable,flag_teve_compra) %>% 
  summarise(porcentagem = n()/total) %>% 
  ggplot() +
  geom_col(aes(x=porcentagem, y=reorder(variable,porcentagem), fill = as.factor(flag_teve_compra)))+
  scale_x_continuous(labels = scales::percent_format(), breaks = seq(0,1, by = 0.25))+
  theme(legend.position="bottom",
        axis.text = element_text(size = 8),
        axis.text.x = element_text(size = 8)
        )+
   labs(x = "Quantidade de Clientes",
       y = "Comportamentos",
       fill = "Flag Compra"
       )


plot2 <- x %>% 
      select(pk_customer,is_social_login,is_search,is_size_guide,is_fit_finder,is_filter,is_sort,
             visitduration,product_view,add_to_cart,remove_from_cart,add_to_favorites,is_view_favorites,
             is_content,is_my_account,is_menu,is_view_sizes,is_faq,qtt_cross_device,
             checkout,flag_teve_compra) %>% 
  melt(id.vars = c("pk_customer", "flag_teve_compra")) %>% 
  filter(value > 0,
         !is.na(value)) %>% 
  ggplot() +
  geom_bar(aes(y=reorder(variable,variable,length), fill = as.factor(flag_teve_compra)), position = 'fill')+
  geom_vline(xintercept = porcentagem_compra, lty = 5, alpha = 0.4)+
  scale_x_continuous(labels = scales::percent_format(), breaks = seq(0,1, by = 0.25))+
   labs(x = "Porcentagem",
       y = "",
       colour = "Comportamento"
       )

mylegend<-g_legend(plot1)

grid.arrange(arrangeGrob(plot1 + theme(legend.position="none"),
                         plot2 + theme(legend.position="none"),
                         top = 'Compras com Login junto com outros comportamentos',
                         nrow=1),
             mylegend, nrow=2,heights=c(10, 1))

Social Login

grupo Quantidade_clientes Porcentagem_compra
Clientes com Social Login 221005 48.57%

plot1 <- x %>% 
      select(pk_customer,is_social_login,is_login,is_search,is_size_guide,is_fit_finder,is_filter,
             visitduration,product_view,add_to_cart,remove_from_cart,add_to_favorites,is_view_favorites,
             is_content,is_my_account,is_menu,is_view_sizes,is_faq,qtt_cross_device,
             checkout,flag_teve_compra) %>% 
  melt(id.vars = c("pk_customer", "flag_teve_compra")) %>% 
  filter(value > 0,
         !is.na(value)) %>% 
  group_by(variable,flag_teve_compra) %>% 
  summarise(porcentagem = n()/total) %>% 
  ggplot() +
  geom_col(aes(x=porcentagem, y=reorder(variable,porcentagem), fill = as.factor(flag_teve_compra)))+
  scale_x_continuous(labels = scales::percent_format(), breaks = seq(0,1, by = 0.25))+
  theme(legend.position="bottom",
        axis.text = element_text(size = 8),
        axis.text.x = element_text(size = 8)
        )+
   labs(x = "Quantidade de Clientes",
       y = "Comportamentos",
       fill = "Flag Compra"
       )


plot2 <- x %>% 
      select(pk_customer,is_social_login,is_login,is_search,is_size_guide,is_fit_finder,is_filter,
             visitduration,product_view,add_to_cart,remove_from_cart,add_to_favorites,is_view_favorites,
             is_content,is_my_account,is_menu,is_view_sizes,is_faq,qtt_cross_device,
             checkout,flag_teve_compra) %>% 
  melt(id.vars = c("pk_customer", "flag_teve_compra")) %>% 
  filter(value > 0,
         !is.na(value)) %>% 
  ggplot() +
  geom_bar(aes(y=reorder(variable,variable,length), fill = as.factor(flag_teve_compra)), position = 'fill')+
  geom_vline(xintercept = porcentagem_compra, lty = 5, alpha = 0.4)+
  scale_x_continuous(labels = scales::percent_format(), breaks = seq(0,1, by = 0.25))+
   labs(x = "Porcentagem",
       y = "",
       colour = "Comportamento"
       )

mylegend<-g_legend(plot1)

grid.arrange(arrangeGrob(plot1 + theme(legend.position="none"),
                         plot2 + theme(legend.position="none"),
                         top = 'Compras com Sort junto com outros comportamentos',
                         nrow=1),
             mylegend, nrow=2,heights=c(10, 1))

View Favorites

grupo Quantidade_clientes Porcentagem_compra
Clientes com View Favorites 19159 44.54%

plot1 <- x %>% 
      select(pk_customer,is_social_login,is_login,is_search,is_size_guide,is_fit_finder,is_filter,is_sort,
             visitduration,product_view,add_to_cart,remove_from_cart,add_to_favorites,
             is_content,is_my_account,is_menu,is_view_sizes,is_faq,qtt_cross_device,
             checkout,flag_teve_compra) %>% 
  melt(id.vars = c("pk_customer", "flag_teve_compra")) %>% 
  filter(value > 0,
         !is.na(value)) %>% 
  group_by(variable,flag_teve_compra) %>% 
  summarise(porcentagem = n()/total) %>% 
  ggplot() +
  geom_col(aes(x=porcentagem, y=reorder(variable,porcentagem), fill = as.factor(flag_teve_compra)))+
  scale_x_continuous(labels = scales::percent_format(), breaks = seq(0,1, by = 0.25))+
  theme(legend.position="bottom",
        axis.text = element_text(size = 8),
        axis.text.x = element_text(size = 8)
        )+
   labs(x = "Quantidade de Clientes",
       y = "Comportamentos",
       fill = "Flag Compra"
       )


plot2 <- x %>% 
      select(pk_customer,is_social_login,is_login,is_search,is_size_guide,is_fit_finder,is_filter,is_sort,
             visitduration,product_view,add_to_cart,remove_from_cart,add_to_favorites,
             is_content,is_my_account,is_menu,is_view_sizes,is_faq,qtt_cross_device,
             checkout,flag_teve_compra) %>% 
  melt(id.vars = c("pk_customer", "flag_teve_compra")) %>% 
  filter(value > 0,
         !is.na(value)) %>% 
  ggplot() +
  geom_bar(aes(y=reorder(variable,variable,length), fill = as.factor(flag_teve_compra)), position = 'fill')+
  geom_vline(xintercept = porcentagem_compra, lty = 5, alpha = 0.4)+
  scale_x_continuous(labels = scales::percent_format(), breaks = seq(0,1, by = 0.25))+
   labs(x = "Porcentagem",
       y = "",
       colour = "Comportamento"
       )

mylegend<-g_legend(plot1)

grid.arrange(arrangeGrob(plot1 + theme(legend.position="none"),
                         plot2 + theme(legend.position="none"),
                         top = 'Compras com View Favorites junto com outros comportamentos',
                         nrow=1),
             mylegend, nrow=2,heights=c(10, 1))